set(PYBIND_DEPS pybind python paddle_api_light paddle_api)
if (NOT LITE_ON_TINY_PUBLISH)
   set(PYBIND_DEPS ${PYBIND_DEPS} paddle_api_full opt_base)
endif()

if(WIN32)
   lite_cc_library(lite_pybind SHARED SRCS pybind.cc DEPS ${PYBIND_DEPS} fbs_headers)
   get_property (os_dependency_modules GLOBAL PROPERTY OS_DEPENDENCY_MODULES)
   target_link_libraries(lite_pybind ${os_dependency_modules})
else()
   lite_cc_library(lite_pybind SHARED SRCS pybind.cc DEPS ${PYBIND_DEPS} fbs_headers)
   target_sources(lite_pybind PUBLIC ${__lite_cc_files})
endif(WIN32)

if (LITE_ON_TINY_PUBLISH)
   set_target_properties(lite_pybind PROPERTIES COMPILE_FLAGS "-flto -fdata-sections")
endif()

if(WITH_AVX AND AVX_FOUND)
   if(WIN32)
      set_target_properties(lite_pybind PROPERTIES COMPILE_FLAGS "/arch:AVX2 /DAVX2 /fp:strict")
   else()
      set_target_properties(lite_pybind PROPERTIES COMPILE_FLAGS "-mfma -mf16c -mavx2")
   endif()
endif()
